package proto

type PushRoomCountMsg struct {
	RoomId int
	Count  int
}

type IMRegister struct {
	UserName       string `json:"userName" binding:"required"`
	Password       string `json:"password" binding:"required"`
	NickName       string `json:"nickName" binding:"required"`
	AvatarUrl      string `json:"avatarUrl"`
	TelNumber      string `json:"telNumber"`
	DepartId       uint   `json:"departId"`
	OrganizeNumber string `json:"organizeNumber"`
}

type IMRegisterAck struct {
	Code int
}

type IMChangePassword struct {
	UserName string `json:"userName" binding:"required"`
	Password string `json:"password" binding:"required"`
}

type IMDeleteUser struct {
	UserNameList []string `json:"userNameList" binding:"required"`
}

type IMLogout struct {
	AuthToken string `json:"authToken" binding:"required"`
}

type IMLogoutReply struct {
	Code int
}

type Connect struct {
	AuthToken string `json:"authToken"`
}

type ConnectReply struct {
	UserId   uint
	UserName string
}

type DisConnect struct {
	AuthToken string `json:"authToken"`
}

type DisConnectReply struct {
	Has bool
}

type SuccessReply struct {
	Code int    `json:"code"`
	Msg  string `json:"msg"`
}

type UserInfoReq struct {
	UserId int
}

type UserInfoRep struct {
	Code     int
	UserId   int
	UserName string
}

type CheckAuthReq struct {
	AuthToken string
}

type CheckAuthRep struct {
	Code     int
	UserId   uint
	UserName string
}

type OnlineUserReq struct {
}

type OnlineUserRep struct {
	UserIdList []uint
}
